home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 98 / Skunkware 98.iso / src / net / bind-contrib.tar.gz / bind-contrib.tar / contrib / hostmaint / hosts.make < prev    next >
Encoding:
Text File  |  1996-10-25  |  10.5 KB  |  316 lines

  1. FTP = /home/serv1/ftp/etc
  2. SHELL = /bin/csh
  3.  
  4. .SUFFIXES:    .txt .hosts .named .rev
  5.  
  6. oldfiles = named.rev
  7.  
  8. txtfiles = other.txt offcampus.txt \
  9.     adm.txt aec.txt ais.txt baker.txt bch.txt \
  10.     berkey.txt bessey.txt bim.txt \
  11.     cal.txt canr.txt case.txt cem.txt chm.txt cl.txt \
  12.     cl250.txt cl251.txt cl252.txt cl253.txt \
  13.     clc.txt com.txt commarts.txt cps.txt css.txt cvm.txt \
  14.     educ.txt egr.txt eppley.txt eustace.txt \
  15.     fshn.txt giltner.txt he.txt hfs.txt holmes.txt \
  16.     int-center.txt kedzie.txt kellogg.txt lib.txt lifesci.txt \
  17.     merit.txt mth.txt nat-res.txt \
  18.     nisbet.txt ns.txt nscl.txt olds.txt \
  19.     pa.txt pp.txt prc.txt prl.txt \
  20.     stt.txt student-serv.txt union.txt univ-rel.txt \
  21.     uud.txt wells.txt wilson.txt
  22.  
  23. hostfiles = other.hosts offcampus.hosts \
  24.     adm.hosts aec.hosts ais.hosts baker.hosts bch.hosts \
  25.     berkey.hosts bessey.hosts bim.hosts \
  26.     cal.hosts canr.hosts case.hosts cem.hosts chm.hosts cl.hosts \
  27.     cl250.hosts cl251.hosts cl252.hosts cl253.hosts \
  28.     clc.hosts com.hosts commarts.hosts cps.hosts css.hosts cvm.hosts \
  29.     educ.hosts egr.hosts eppley.hosts eustace.hosts \
  30.     fshn.hosts giltner.hosts he.hosts hfs.hosts holmes.hosts \
  31.     int-center.hosts kedzie.hosts kellogg.hosts lib.hosts lifesci.hosts \
  32.     merit.hosts mth.hosts nat-res.hosts \
  33.     nisbet.hosts ns.hosts nscl.hosts olds.hosts \
  34.     pa.hosts pp.hosts prc.hosts prl.hosts \
  35.     stt.hosts student-serv.hosts union.hosts univ-rel.hosts \
  36.     uud.hosts wells.hosts wilson.hosts
  37.  
  38. namedfiles = other.named offcampus.named \
  39.     adm.named aec.named ais.named baker.named bch.named \
  40.     berkey.named bessey.named bim.named \
  41.     cal.named canr.named case.named cem.named chm.named cl.named \
  42.     cl250.named cl251.named cl252.named cl253.named \
  43.     clc.named com.named commarts.named cps.named css.named cvm.named \
  44.     educ.named egr.named eppley.named eustace.named \
  45.     fshn.named giltner.named he.named hfs.named holmes.named \
  46.     int-center.named kedzie.named kellogg.named lib.named lifesci.named \
  47.     merit.named mth.named nat-res.named \
  48.     nisbet.named ns.named nscl.named olds.named \
  49.     pa.named pp.named prc.named prl.named \
  50.     stt.named student-serv.named union.named univ-rel.named \
  51.     uud.named wells.named wilson.named
  52.  
  53. revfiles = 35.8.rev 35.12.rev
  54.  
  55. revocfiles = 35.9.rev 35.10.rev \
  56.     35.194.50.rev 35.129.rev 35.151.rev 35.192.224.rev 35.193.16.rev \
  57.     35.194.48.rev 35.194.64.rev 35.194.80.rev 35.194.96.rev \
  58.     35.202.176.rev 35.202.192.rev \
  59.     192.108.188.rev 192.108.189.rev 192.108.190.rev 192.108.191.rev \
  60.     192.188.100.rev 192.188.118.rev 192.231.113.rev
  61.  
  62. hosts.made:    setup.done hosts named.msu.hosts networks txt.msu \
  63.     ethers.msu named_dump.db
  64.     rm -f $(oldfiles)
  65.     touch hosts.made
  66.  
  67. lanz:    hosts.msu
  68.     awk -f lanzhosts.awk hosts.msu >lanztemp
  69.     split -1000 lanztemp lanzhost.
  70.     mv lanzhost.aa hosts1.lanz
  71.     mv lanzhost.ab hosts2.lanz
  72.     mv lanzhost.ac hosts3.lanz
  73.     mv lanzhost.ad hosts4.lanz
  74.     mv lanzhost.ae hosts5.lanz
  75.     -mv lanzhost.af hosts6.lanz
  76.     -mv lanzhost.ag hosts7.lanz
  77.     rm lanztemp
  78.     touch lanz
  79.  
  80. setup.done:    setupserver
  81.     csh setupserver
  82.     touch setup.done
  83.  
  84. hosts:    hosts.msu hosts.umich hosts.misc hosts.nic
  85.     rm -f hosts
  86.     ( echo '#    /etc/hosts from serv1.cl.msu.edu ' `date +%d-%h-%y`; \
  87.       echo '#'; echo '#>>>>    /etc/hosts.msu'; echo '#'; \
  88.       cat hosts.msu; \
  89.       echo '#'; echo '#>>>>    /etc/hosts.umich'; echo '#'; \
  90.       cat hosts.umich; \
  91.       echo '#'; echo '#>>>>    /etc/hosts.misc'; echo '#'; \
  92.       cat hosts.misc; \
  93.       echo '#'; echo '#>>>>    /etc/hosts.nic'; echo '#'; \
  94.       cat hosts.nic ) >hosts
  95.  
  96. mail-hosts:    hosts.msu hosts.lastmail
  97.     rm -f mail-temp hosts.temp
  98.     sort hosts.msu >hosts.temp
  99.     -diff hosts.lastmail hosts.temp >hosts.diff
  100.     ( set newver = `head -1 hosts.msu`; \
  101.       set oldver = `head -1 hosts.lastver`; \
  102.       echo 'The hosts file for MSU has been updated.  The latest version,' ; \
  103.       echo 'dated' $$newver[$$#newver], 'may be retrieved from serv1.cl.msu.edu via' ; \
  104.       echo 'anonymous FTP from file etc/hosts.msu.' ; \
  105.       echo ' '; \
  106.       echo 'This version of the hosts file contains the following changes'; \
  107.       echo 'since version' $$oldver[$$#oldver]':'; \
  108.       echo ' '; \
  109.       nawk -f hostmail.awk hosts.diff | sort; \
  110.       echo ' ' ; \
  111.       echo 'Doug Nelson' ) >mail-temp
  112.     head -2 mail-hosts >mail-old-temp
  113.     -head -2 mail-temp | cmp -s - mail-old-temp || ( \
  114.       su net -c "/usr/ucb/mail -s 'Hosts list for MSU.EDU' hosts-update-list" <mail-temp; \
  115.       mv hosts.temp hosts.lastmail; \
  116.       mv mail-temp mail-hosts; \
  117.       head -1 hosts.msu >hosts.lastver )
  118.     rm -f mail-old-temp hosts.diff hosts.temp
  119.     touch hosts.lastmail
  120.     touch mail-hosts
  121.  
  122. mail-decad-list:    ipad.out
  123.     sort decad.email > mail-decad-list
  124.  
  125. mail-decad:    $(FTP)/decadministrators mail-decad-list
  126.     rm -f mail-temp decad-temp
  127.     ( echo 'The Decnet address assignment list for MSU has been updated.  The latest'; \
  128.       echo 'version, dated' `date +%d-%h-%y`, 'may be retrieved from serv1.cl.msu.edu via'; \
  129.       echo 'anonymous FTP from file etc/decadministrators.'; \
  130.       echo ' '; \
  131.       echo 'Doug Nelson' ) >mail-temp
  132.     grep '^[0-9]*\.' decad.sublist > decad-temp
  133.     -cmp -s decad-temp decad.lastmail || \
  134.       cmp -s mail-decad mail-temp || \
  135.       ( su net -c "/usr/ucb/mail -s 'Decnet Address assignment list for MSU.EDU' decadmin" <mail-temp; \
  136.       cp decad-temp decad.lastmail )
  137.     mv mail-temp mail-decad
  138.     rm -f decad-temp
  139.  
  140. ipad.out:    ipad.txt
  141.     ( echo -n "Date: "; \
  142.       date; \
  143.       sed 's/[     ]*:[     ]*/:/g' ipad.txt ) | \
  144.     nawk -f ipad.nawk > ipad.out
  145.  
  146. mail-ipad-list:    ipad.out
  147.     sort ipad.email > mail-ipad-list
  148.  
  149. mail-ipad:    $(FTP)/ipadministrators
  150.     rm -f mail-temp
  151.     ( echo 'The IP address assignment list for MSU has been updated.  The latest'; \
  152.       echo 'version, dated' `date +%d-%h-%y`, 'may be retrieved from serv1.cl.msu.edu via'; \
  153.       echo 'anonymous FTP from file etc/ipadministrators.'; \
  154.       echo ' '; \
  155.       echo 'Doug Nelson') >mail-temp
  156.     -cmp -s mail-ipad mail-temp || \
  157.       su net -c "/usr/ucb/mail -s 'IP Address assignment list for MSU.EDU' 11600ld@msu.edu parnell@msu.edu 12479che@msu.edu" <mail-temp
  158.     mv mail-temp mail-ipad
  159.  
  160. txt.msu:    $(txtfiles) dup-names
  161.     if (! -z dup-names)  exit 1
  162.     echo ';    /etc/txt.msu from serv1.cl.msu.edu ' `date +%d-%h-%y` >txt.msu
  163.     ( sh -c 'for file in $(txtfiles) ; do \
  164.       echo ";"; \
  165.       echo ";>>    /etc/$$file"; \
  166.       echo ";"; \
  167.       cat $$file; \
  168.       done' ) >>txt.msu
  169.  
  170. .txt.hosts:
  171.     rm -f $@
  172.     ( echo '#'; echo '#>>    /etc/$@'; echo '#'; \
  173.       nawk -f txt2host.awk $< ) > $@
  174.  
  175. hosts.msu:    $(hostfiles) dup-names
  176.     if (! -z dup-names)  exit 1
  177.     rm -f hosts.msu hosts.msu.1
  178.     ( echo '#    /etc/hosts.msu from serv1.cl.msu.edu ' `date +%d-%h-%y`; \
  179.       cat $(hostfiles) ) >hosts.msu.1
  180.     ( egrep '^#|[     ][-0-9A-Za-z]*\.msu\.edu' hosts.msu.1; \
  181.       echo '#'; echo '#    Local (PC/workstation) systems'; echo '#'; \
  182.       egrep -v '^#[^>]|[     ][-0-9A-Za-z]*\.msu\.edu' hosts.msu.1 ) >hosts.msu
  183.       rm hosts.msu.1
  184.  
  185. msuhl-telnet:    txt.msu
  186.     awk -f txt2hl.awk txt.msu > msuhl-telnet
  187.  
  188. $(FTP)/cps.hosts:    cps.hosts
  189.     cp cps.hosts $(FTP)/cps.hosts
  190.     chmod 644 $(FTP)/cps.hosts
  191.  
  192. $(FTP)/hosts:    hosts
  193.     cp hosts $(FTP)/hosts
  194.     chmod 644 $(FTP)/hosts
  195.  
  196. $(FTP)/hosts.msu:    hosts.msu
  197.     cp hosts.msu $(FTP)/hosts.msu
  198.     chmod 644 $(FTP)/hosts.msu
  199.  
  200. $(FTP)/txt.msu:    txt.msu
  201.     cp txt.msu $(FTP)/txt.msu
  202.     chmod 644 $(FTP)/txt.msu
  203.  
  204. $(FTP)/decadministrators:    decad.header ipad.out
  205.     ( echo 'Last revision:  ' `date +%d-%h-%y`; \
  206.       echo ''; \
  207.       cat decad.header decad.mgrlist decad.sublist ; \
  208.       ) >$(FTP)/decadministrators
  209.     chmod 644 $(FTP)/decadministrators
  210.  
  211. $(FTP)/ipad.ser:    ipad.out
  212.     echo '# Last revision:  ' `date +%d-%h-%y` >$(FTP)/ipad.ser
  213.     echo '#' >>$(FTP)/ipad.ser
  214.     sort -t. -n +0 -1 +1 -2 +2 -3 +3 -4 ipad.ser >>$(FTP)/ipad.ser
  215.     chmod 644 $(FTP)/ipad.ser
  216.  
  217. $(FTP)/ipadministrators:    ipad.header ipad.out
  218.     ( echo 'Last revision:  ' `date +%d-%h-%y`; \
  219.       echo ''; \
  220.       cat ipad.header ipad.mgrlist ipad.domlist ipad.sublist ; \
  221.       ) >$(FTP)/ipadministrators
  222.     chmod 644 $(FTP)/ipadministrators
  223.  
  224. /usr/tmp/named_dump.db:    dup-names named.bitnet named.boot named.ca \
  225.     named.uucp \
  226.     named.lcc.hosts $(revfiles) $(revocfiles)
  227.     if (! -z dup-names)  exit 1
  228.     rm -f /usr/tmp/named_dump.db
  229.     kill -HUP `cat /etc/named.pid`
  230.     sleep 15
  231.     kill -INT `cat /etc/named.pid`
  232.     if (! -f /usr/tmp/named_dump.db) sleep 10
  233.     @if (! -f /usr/tmp/named_dump.db) sleep 10
  234.     @if (! -f /usr/tmp/named_dump.db) sleep 20
  235.     @if (! -f /usr/tmp/named_dump.db) sleep 20
  236.     @if (! -f /usr/tmp/named_dump.db) sleep 30
  237.     @if (! -f /usr/tmp/named_dump.db) sleep 30
  238.     @if (! -f /usr/tmp/named_dump.db) sleep 60
  239.     @if (! -f /usr/tmp/named_dump.db) sleep 60
  240.     @if (! -f /usr/tmp/named_dump.db) echo 'Dump still not found....'
  241.     sleep 10
  242.  
  243. named_dump.db:    /usr/tmp/named_dump.db
  244.     head -1 /usr/tmp/named_dump.db >named_dump.db
  245.  
  246. $(revfiles):    named.soa named.msu.hosts ipad.out dup-names
  247.     if (! -z dup-names)  exit 1
  248.     ( set date=`date +%d-%h-%y`; \
  249.       set serial=`date +%y%m%d`; \
  250.       sed "s/%file%/$@/" named.soa| \
  251.       sed "s/%date%/$$date/"| \
  252.       sed "s/%serial%/$$serial/"; \
  253.       grep -v ' NOPTR' named.msu.hosts | \
  254.       ndrev $(@:.rev=) -d msu.edu; \
  255.       grep ';$(@:.rev=)$$' ipad.rev ) >$@
  256.  
  257. $(revocfiles):    named.soa offcampus.named merit.named merit2.named ipad.out
  258.     ( set date=`date +%d-%h-%y`; \
  259.       set serial=`date +%y%m%d`; \
  260.       sed "s/%file%/$@/" named.soa| \
  261.       sed "s/%date%/$$date/"| \
  262.       sed "s/%serial%/$$serial/"; \
  263.       grep -v ' NOPTR' offcampus.named | \
  264.       ndrev $(@:.rev=) -d msu.edu; \
  265.       grep -v ' NOPTR' merit.named | \
  266.       ndrev $(@:.rev=) -d msu.edu; \
  267.       grep -v ' NOPTR' merit2.named | \
  268.       ndrev $(@:.rev=) -d merit.edu; \
  269.       grep ';$(@:.rev=)$$' ipad.rev ) >$@
  270.  
  271. merit2.named:    merit.txt
  272.     ( echo ';'; echo ';>>    /etc/$@'; echo ';'; \
  273.       nawk -f txt2named.awk origin=merit.edu merit.txt ) > $@
  274.  
  275. .txt.named:
  276.     ( echo ';'; echo ';>>    /etc/$@'; echo ';'; \
  277.       nawk -f txt2named.awk $< ) > $@
  278.  
  279. bridges.named:    bridges.txt
  280.     ( echo ';'; echo ';>>    /etc/$@'; echo ';'; \
  281.       sed 's/ *: */:/g' $< | awk -f brtxt2named.awk ) > $@
  282.  
  283. dup-names:    named.msu.hosts
  284.     rm -f dup-names
  285.     ( egrep '    IN A|    IN CNAME' named.msu.hosts | \
  286.       grep -v ' DUPOK' | \
  287.       sed 's/\(.*\)    IN .*/*** Duplicate name: \1.msu.edu/' | \
  288.       sort | \
  289.       uniq -d ) >dup-names
  290.     cat dup-names
  291.     if (! -z dup-names)  exit 1
  292.  
  293. named.msu.hosts:    named.soa $(namedfiles) bridges.named ipad.out
  294.     ( set date=`date +%d-%h-%y`; \
  295.       set serial=`date +%y%m%d`; \
  296.       sed "s/%file%/named.msu.hosts/" named.soa| \
  297.       sed "s/%date%/$$date/"| \
  298.       sed "s/%serial%/$$serial/"; \
  299.       cat $(namedfiles) ipad.named bridges.named ) >named.msu.hosts
  300.  
  301. named.lcc.hosts:    named.soa lcc.txt
  302.     ( set date=`date +%d-%h-%y`; \
  303.       set serial=`date +%y%m%d`; \
  304.       sed "s/%file%/named.lcc.hosts/" named.soa| \
  305.       sed "s/%date%/$$date/"| \
  306.       sed "s/%serial%/$$serial/"; \
  307.       nawk -f txt2named.awk origin=lcc.edu lcc.txt ) >named.lcc.hosts
  308.  
  309. $(FTP)/named.msu.hosts:    named.msu.hosts dup-names
  310.     cp named.msu.hosts $(FTP)/named.msu.hosts
  311.     chmod 644 $(FTP)/named.msu.hosts
  312.  
  313. $(FTP)/networks:    networks
  314.     cp networks $(FTP)/networks
  315.     chmod 644 $(FTP)/networks
  316.